设备树文件说明¶
Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.
概述¶
本文档介绍Quectel Pi H1的设备树文件结构、位置和修改方法。设备树(Device Tree)是Linux内核用于描述硬件配置的数据结构。掌握设备树文件的组织结构对于内核开发至关重要。
顶层设备树¶
Quectel Pi H1的顶层设备树文件为 qcs6490-idp-pi.dts,可以在以下两个位置找到:
推荐修改位置(内核代码外,方便覆盖):
src/qcom-6.6-overlay/arch/arm64/boot/dts/qcom/qcs6490-idp-pi.dts
内核源码内位置:
sources/quectel-src/kernel/qcom-6.6/arch/arm64/boot/dts/qcom/qcs6490-idp-pi.dts
建议:对设备树的所有修改,推荐在 src/qcom-6.6-overlay 目录下的文件上进行。
常用设备树文件¶
sc7280.dtsi¶
在开发过程中,sc7280.dtsi 文件会被高频查看和使用。该文件包含了以下常用节点:
GPIO(通用输入输出)
SPI(串行外设接口)
I2C(I²C总线)
UART(串口)
CPU(处理器)
GPU(图形处理器)
文件路径:
sources/quectel-src/kernel/qcom-6.6/arch/arm64/boot/dts/qcom/sc7280.dtsi
外部设备树仓库¶
高通平台将显示、图形、摄像头、视频等相关的驱动和设备树从Linux内核源码中分离出来,形成独立的代码仓库。
查看仓库信息¶
可根据 镜像构建 下载Yocto工程源码,通过查看 layers/meta-qcom-hwe 目录下的 .bb 文件获取具体的代码仓库信息。
示例:查看摄像头设备树仓库
打开文件 layers/meta-qcom-hwe/recipes-multimedia/cameradtb/cameradtb_1.0.bb,可以看到:
SRCPROJECT = "git://git.codelinaro.org/clo/le/platform/vendor/opensource/camera-devicetree.git;protocol=https"
SRCBRANCH = "camera-kernel.qclinux.1.0.r1-rel"
SRCREV = "08511ff747916576232cc26394bb9c5c6e0ab1f5"
信息说明:
仓库地址:https://git.codelinaro.org/clo/le/platform/vendor/opensource/camera-devicetree.git
分支:camera-kernel.qclinux.1.0.r1-rel
提交版本:08511ff747916576232cc26394bb9c5c6e0ab1f5
本地设备树子仓库位置¶
为了便于编译和使用,Quectel Pi H1将这些独立的设备树子仓库放置在 src/devicetree 目录下:
模块 |
路径 |
|---|---|
摄像头 |
src/devicetree/camera-devicetree |
显示 |
src/devicetree/display-devicetree |
图形 |
src/devicetree/graphics-devicetree |
视频 |
src/devicetree/video-devicetree |
各模块设备树详细说明¶
Camera(摄像头)¶
设备树文件¶
Camera主配置:
src/devicetree/camera-devicetree/qcm6490-camera-rb3.dtsi
Camera传感器配置:
src/devicetree/camera-devicetree/qcm6490-camera-sensor-rb3.dtsi
相关配方文件¶
基础配方:
layers/meta-qcom-hwe/recipes-multimedia/cameradtb/cameradtb_1.0.bb
扩展配方:
layers/meta-quectel/recipes-multimedia/cameradtb/cameradtb_1.0.bbappend
Display(显示)¶
设备树文件¶
8寸屏配置:
src/devicetree/display-devicetree/display/dsi-panel-waveshare-8inch-video.dtsi
SDE Display主配置:
src/devicetree/display-devicetree/display/qcm6490-sde-display-pi.dtsi
SDE Display引脚配置:
src/devicetree/display-devicetree/display/qcm6490-sde-display-pinctrl.dtsi
SDE Display通用配置:
src/devicetree/display-devicetree/display/qcm6490-sde-display.dtsi
顶层设备树引用:
src/qcom-6.6-overlay/arch/arm64/boot/dts/qcom/qcs6490-idp-pi.dts
相关配方文件¶
基础配方:
layers/meta-qcom-hwe/recipes-multimedia/display/qcom-displaydevicetree_git.bb
扩展配方:
layers/meta-quectel/recipes-multimedia/display/qcom-displaydevicetree_git.bbappend
Graphics(图形)¶
设备树文件¶
GPU配置:
src/devicetree/graphics-devicetree/gpu/qcm6490-graphics.dtsi
相关配方文件¶
基础配方:
layers/meta-qcom-hwe/recipes-graphics/graphicsdevicetree/qcom-graphicsdevicetree_git.bb
扩展配方:
layers/meta-quectel/recipes-graphics/graphicsdevicetree/qcom-graphicsdevicetree_git.bbappend
Video(视频)¶
设备树文件¶
Video配置:
src/devicetree/video-devicetree/qcm6490-video.dtsi
相关配方文件¶
基础配方:
layers/meta-qcom-hwe/recipes-multimedia/video/qcom-videodtb_1.0.bb
扩展配方:
layers/meta-quectel/recipes-multimedia/video/qcom-videodtb_1.0.bbappend
修改建议¶
优先修改覆盖层:修改设备树时,优先在 src/qcom-6.6-overlay 和 src/devicetree 目录下的文件上进行,避免直接修改内核源码。
了解依赖关系:修改设备树前,建议先了解各个 .dtsi 文件之间的引用关系。
配方文件同步:如果修改了设备树仓库或添加了新的设备树文件,需要同步更新对应的 .bb 和 .bbappend 文件。
版本控制:建议使用Git管理所有修改,便于追踪和回滚。